package com.ruoyi.ldzlsc.service;

import java.util.List;
import com.ruoyi.ldzlsc.domain.ScProductionOrder;

/**
 * 生产订单Service接口
 * 
 * @author ldzl
 * @date 2023-09-15
 */
public interface ScProductionOrderService
{
    /**
     * 查询生产订单列表
     * 
     * @param scProductionOrder 生产订单
     * @return 生产订单集合
     */
     List<ScProductionOrder> selectScProductionOrderList(ScProductionOrder scProductionOrder);
    
    /**
     * 查询生产订单详情，包括产品明细、生产计划、工单
     *
     * @param id 生产订单主键
     * @return 包含完整信息的生产订单
     */
     ScProductionOrder selectScProductionOrderWithAllDetails(Long id);
     
    /**
     * 新增生产订单
     * 
     * @param scProductionOrder 生产订单
     * @return 结果
     */
     int insertScProductionOrder(ScProductionOrder scProductionOrder);
     
    /**
     * 修改生产订单
     * 
     * @param scProductionOrder 生产订单
     * @return 结果
     */
     int updateScProductionOrder(ScProductionOrder scProductionOrder);
    
    /**
     * 批量删除生产订单
     * 
     * @param ids 需要删除的生产订单主键集合
     * @return 结果
     */
     int deleteScProductionOrderByIds(Long[] ids);

} 